package com.ruoyi.business.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.business.domain.ZrsMbManageGoal;
import com.ruoyi.business.domain.mbglxzb.MbGlxYjzb;

/**
 * 目标项管理记录Service接口
 * 
 * @author Yuhf
 * @date 2023-11-20
 */
public interface IZrsMbManageGoalService 
{
    /**
     * 查询目标项管理记录
     * 
     * @param mbGoalId 目标项管理记录主键
     * @return 目标项管理记录
     */
    public ZrsMbManageGoal selectZrsMbManageGoalByMbGoalId(Long mbGoalId);

    /**
     * 查询目标项管理记录列表
     * 
     * @param zrsMbManageGoal 目标项管理记录
     * @return 目标项管理记录集合
     */
    public List<ZrsMbManageGoal> selectZrsMbManageGoalList(ZrsMbManageGoal zrsMbManageGoal);
    
    public List<Map> selectZrsMbManageGoalZbList(ZrsMbManageGoal zrsMbManageGoal);
    
    public List<MbGlxYjzb> selectZrsMbManageGoalZbListObj(ZrsMbManageGoal zrsMbManageGoal);
    
    //获取所有的 一级指标
    public List<Map> selectZbManageListByMbId(ZrsMbManageGoal zrsMbManageGoal);
    //获取选中的 一级指标
    public Long[] selectSelZbManageListByMbId(ZrsMbManageGoal zrsMbManageGoal);
    
    /**
     * 新增目标项管理记录
     * 
     * @param zrsMbManageGoal 目标项管理记录
     * @return 结果
     */
    public int insertZrsMbManageGoal(ZrsMbManageGoal zrsMbManageGoal);

    /**
     * 修改目标项管理记录
     * 
     * @param zrsMbManageGoal 目标项管理记录
     * @return 结果
     */
    public int updateZrsMbManageGoal(ZrsMbManageGoal zrsMbManageGoal);

    /**
     * 批量删除目标项管理记录
     * 
     * @param mbGoalIds 需要删除的目标项管理记录主键集合
     * @return 结果
     */
    public int deleteZrsMbManageGoalByMbGoalIds(ZrsMbManageGoal zrsMbManageGoal);

    /**
     * 删除目标项管理记录信息
     * 
     * @param mbGoalId 目标项管理记录主键
     * @return 结果
     */
    public int deleteZrsMbManageGoalByMbGoalId(Long mbGoalId);
}
